﻿using efcoredemo.Entity;
using System;
using System.Collections.Generic;

namespace efcoredemo
{
    class Program
    {
        static void Main(string[] args)
        {
            var context = new TestContext();

            //添加部门
            //context.Set<Dept>().Add(new Dept("部门1", null));
            //添加用户
            //context.Set<User>().Add(new User("用户1", "13200001111", 0));
            ////添加公司
            //context.Set<UserCompany>().Add(new UserCompany("公司1", 7));

            ////添加部门、用户部门
            //context.Set<Dept>().Add(new Dept( "部门2",5,new List<UserDept>()  {  new UserDept(7,null) }));

            //添加用户、用户部门、用户公司
            //context.Set<User>().Add(
            //    new User("张三", "13888889999", 1,
            //        new List<UserDept>
            //        {
            //            new UserDept(null, 5)
            //        },
            //        new List<UserCompany>
            //        {
            //            new UserCompany("ABC公司")
            //        }
            //));

            ////添加用户、公司
            //context.Set<UserCompany>().Add(new UserCompany("公司2", new User("用户2", "13599998888", 2)));

            //更新用户、用户部门、用户公司 
            //context.Set<User>().Update(new User(7, "李四", "13412344321", 1,
            //    new List<UserDept> {
            //        new UserDept(null,5) // 不指定ID会插入数据 如果5不存在会报错
            //    },
            //    new List<UserCompany>
            //    {
            //        new UserCompany("ABC公司修改")
            //    }));



            context.Set<User>().Update(new User(7, "用户2修改3", "13037318682", 1,
                new List<UserDept> {
                    new UserDept(5,7,5)
                },
                new List<UserCompany>
                {
                    new UserCompany(10,"ABCDE公司修改2")
                }));

            context.SaveChanges();

        }
    }
}
